package com.lemon.blog.web.mapper;

import com.lemon.blog.web.domain.BlComment;
import com.lemon.common.core.base.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 包名称：com.lemon.blog.mapper
 * 类名称：BlCommentMapper
 * 类描述：博客评论mapper
 * 创建人：@author huangpeng
 * 创建时间：2022年09月18日 19:47
 */
public interface BlCommentMapper extends BaseMapper<BlComment> {

    /**
     * 查询评论数量
     * @Title: selectCommentCount
     * @Description: 查询评论数量
     * @param
     * @return: int
     * @throws:
     * @author: huangpeng
     * @Date: 2022/9/18 20:01
     */
    int selectCommentCount();

    /**
     * 获取博客列表
     * @Title: selectCommentList
     * @Description: 获取博客列表
     * @param comment
     * @return: List<BlComment>
     * @throws:
     * @author: huangpeng
     * @Date: 2022/9/25 17:29
     */
    List<BlComment> selectCommentList(BlComment comment);

    /**
     * 查询子评论
     * @Title: selectChildListById
     * @Description: 查询子评论
     * @param id
     * @return: List<BlComment>
     * @throws:
     * @author: huangpeng
     * @Date: 2023/8/18 18:51
     */
    List<BlComment> selectChildListById(@Param("id") Long id);

    /**
     * 通过用户id查询评论数量
     * @Title: selectCountByUserId
     * @Description: 通过用户id查询评论数量
     * @param userId 用户id
     * @return: int
     * @throws:
     * @author: huangpeng
     * @Date: 2023/8/23 13:27
     */
    int selectCountByUserId(@Param("userId") Long userId);

    /**
     * 查询关于我的的评论列表
     * @Title: listAboutComment
     * @Description: 查询关于我的的评论列表
     * @param model
     * @return: List<BlComment>
     * @throws:
     * @author: huangpeng
     * @Date: 2023/10/12 22:24
     */
    List<BlComment> listAboutComment(BlComment model);
}